ইলাস্টিকসার্চ (ElasticSearch)

Shard এবং Replica এর ধারণা

Latest Technologies - ইলাস্টিকসার্চ (ElasticSearch) - Elasticsearch Cluster এবং Shard Management | NCTB BOOK

Shard এবং Replica দুটি ধারণা ডেটাবেস বা ডিস্ট্রিবিউটেড সিস্টেমে ব্যবহৃত হয় ডেটা ম্যানেজমেন্ট, স্কেলিবিলিটি, এবং ফল্ট টলারেন্স উন্নত করতে। এই ধারণাগুলো সাধারণত ডিস্ট্রিবিউটেড ডাটাবেস সিস্টেম, যেমন MongoDB, Elasticsearch, Cassandra, বা অন্যান্য NoSQL ডাটাবেসে বেশি ব্যবহৃত হয়। চলুন প্রতিটি ধারণা বিস্তারিতভাবে ব্যাখ্যা করি:

Shard:

Shard হলো ডেটাবেসের একটি অংশ যা সম্পূর্ণ ডেটাবেসের একটি সাবসেট বা টুকরা ধারণ করে। শার্ডিং ব্যবস্থার মূল লক্ষ্য হলো একটি বড় ডেটাবেসকে ছোট ছোট অংশে ভাগ করে ডেটা স্টোরেজ এবং কুয়েরি পারফরম্যান্স উন্নত করা। এটি বিশেষভাবে কার্যকর যখন ডেটাবেসে অনেক ডেটা থাকে এবং তা একক সার্ভারে ধারণ করা সম্ভব নয় বা বাস্তবসম্মত নয়।

  • কীভাবে কাজ করে: শার্ডিংয়ের মাধ্যমে ডেটা আলাদা আলাদা সার্ভারে (বা নোডে) বিভক্ত করে রাখা হয়। প্রতিটি শার্ড একটি নির্দিষ্ট ডেটা রেঞ্জ বা হ্যাশিং অ্যালগোরিদম ব্যবহার করে ডেটা সেগমেন্ট করে।
  • উদাহরণ: ধরুন একটি ডেটাবেসে ব্যবহারকারীদের তথ্য আছে এবং তাদের ID অনুযায়ী শার্ড করা হয়েছে। তাহলে ID ১ থেকে ১০০০ পর্যন্ত ডেটা হয়ত শার্ড-১-এ থাকবে, এবং ১০০১ থেকে ২০০০ পর্যন্ত ডেটা শার্ড-২-এ থাকবে।
  • লক্ষ্য: শার্ড ব্যবহারের মূল লক্ষ্য হলো স্কেলিবিলিটি এবং লোড ব্যালেন্সিং। একটি বড় ডেটাবেসকে ছোট শার্ডে ভাগ করে দিলে সার্ভারগুলোর মধ্যে লোড সমানভাবে বিতরণ হয় এবং পারফরম্যান্স ভালো হয়।

Replica:

Replica হলো শার্ডের একটি কপি বা রেপ্লিকা যা সিস্টেমের বিভিন্ন নোডে সংরক্ষিত হয়। এটি মূলত ডেটার রিডান্ড্যান্সি এবং ফল্ট টলারেন্স নিশ্চিত করতে ব্যবহৃত হয়।

  • কীভাবে কাজ করে: প্রতিটি শার্ডের এক বা একাধিক রেপ্লিকা তৈরি করা হয় এবং সেগুলো বিভিন্ন নোডে সংরক্ষণ করা হয়। যখন কোনো নোড ব্যর্থ হয় বা অফলাইনে যায়, তখন অন্য নোডে থাকা রেপ্লিকা থেকে ডেটা পাওয়া যায়।
  • উদাহরণ: যদি শার্ড-১-এর একটি প্রাইমারি কপি থাকে, তাহলে শার্ড-১-এর আরও একটি বা দুটি রেপ্লিকা তৈরি করা হতে পারে, যা অন্য সার্ভারগুলিতে সংরক্ষিত থাকে।
  • লক্ষ্য: রেপ্লিকার মূল উদ্দেশ্য হলো ডেটার এভেইলেবিলিটি এবং রিডান্ড্যান্সি নিশ্চিত করা। এটি ডেটা লস রোধ করে এবং ফেইলওভার বা ব্যাকআপ সমাধান প্রদান করে।

Shard এবং Replica এর পার্থক্য:

শার্ড (Shard)রেপ্লিকা (Replica)
শার্ড হলো ডেটাবেসের একটি অংশ যা ডেটার একটি সাবসেট ধারণ করে।রেপ্লিকা হলো শার্ডের একটি কপি, যা বিভিন্ন নোডে রাখা হয়।
এটি ডেটাবেসের স্কেলিবিলিটি এবং পারফরম্যান্স বাড়াতে ব্যবহৃত হয়।এটি ডেটার এভেইলেবিলিটি এবং ফল্ট টলারেন্স উন্নত করতে ব্যবহৃত হয়।
প্রতিটি শার্ড আলাদা ডেটা ধারণ করে।প্রতিটি রেপ্লিকা একটি নির্দিষ্ট শার্ডের কপি।
Content added By
Promotion